# 前端服务基于 Node.js（无需 CUDA，但统一基础系统版本为 Ubuntu 22.04）
FROM ubuntu:22.04

# 避免交互式提示
ENV DEBIAN_FRONTEND=noninteractive

# 配置 Ubuntu 清华源（保持与其他服务一致）
RUN sed -i 's/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list && \
    sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list

# 安装 Node.js 和 npm（使用 NodeSource 源，确保版本兼容）
RUN apt-get update && apt-get install -y curl && \
    curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \
    apt-get install -y nodejs && \
    rm -rf /var/lib/apt/lists/*

# 【核心修正】直接使用 npm 官方源，依赖 Docker 全局加速（清华源会自动代理）
# 无需再配置清华 npm 源，Docker 会通过 registry-mirrors 加速官方源请求
RUN npm config set registry https://registry.npmjs.org/

# 创建项目目录
WORKDIR /app

# 复制前端依赖文件
COPY package.json ./

# 安装前端依赖（--force 保留，处理可能的冲突；添加 --verbose 便于排查后续问题）
RUN npm install --force --verbose

# 复制前端代码
COPY . .

# 暴露可视化界面端口
EXPOSE 3000

# 启动前端服务
CMD ["npm", "start"]